// Car.js
import {
    AsyncSeriesWaterfallHook,
} from 'tapable';

export default class Car {
    constructor() {
        this.hooks = {
            calculateRoutes: new AsyncSeriesWaterfallHook(['home']), // 要标注一下，要传参数啦
        };
    }

    calculateRoutes() {
        return this.hooks.calculateRoutes.promise();
    }
}


// Car.js
// import { AsyncSeriesHook, AsyncSeriesBailHook } from 'tapable'
// export default class Car {
//  constructor() {
//  this.hooks = {
//  calculateRoutes2: new AsyncSeriesHook(),
//  drift2: new AsyncSeriesBailHook(),
//  }
//  }
//  calculateRoutes2(callback) {
//  this.hooks.calculateRoutes2.callAsync(callback)
//  }
//  drift2(callback) {
//  this.hooks.drift2.callAsync(callback)
//  }
// }
